home *** CD-ROM | disk | FTP | other *** search
- stop();
- dir = 4;
- dead = time = tonePos = 0;
- paused = gameOver = newLife = false;
- if(playTop < playBtm)
- {
- playTop += downSpeed;
- }
- speed = (playTop + 120) * 2;
- this.onEnterFrame = function()
- {
- if(paused || newLife)
- {
- return undefined;
- }
- for(var i in alien_mc)
- {
- for(var j in alien_mc[i])
- {
- var a_mc = alien_mc[i][j];
- if(typeof a_mc == "movieclip" && a_mc.hitTest(laser_mc))
- {
- explode_mc._x = Number(a_mc._x) + Number(a_mc._parent._x);
- explode_mc._y = Number(a_mc._y) + Number(a_mc._parent._y);
- explode_mc.gotoAndPlay(2);
- score += a_mc.val;
- setScore();
- dead++;
- a_mc.removeMovieClip();
- resetLaser();
- break;
- }
- }
- }
- if(laser_mc._visible)
- {
- for(var i in barracks_mc)
- {
- var b_mc = barracks_mc[i];
- if(b_mc._visible)
- {
- if(b_mc.hitTest(laser_mc))
- {
- if(b_mc._currentframe == 4)
- {
- b_mc._visible = false;
- }
- else
- {
- b_mc.nextFrame();
- }
- resetLaser();
- break;
- }
- }
- }
- }
- if(ufo_mc._visible && ufo_mc._currentframe == 1)
- {
- if(ufo_mc.hitTest(laser_mc))
- {
- ufoSound_mc.gotoAndStop(1);
- ufo_mc.gotoAndPlay(2);
- resetLaser();
- }
- }
- rate = 1000 - speed - dead * 4;
- if(rate < 0)
- {
- rate = 0;
- }
- var n = 4;
- while(true)
- {
- if(n > 0)
- {
- var f_mc = _root["fire" + n + "_mc"];
- if(f_mc._visible)
- {
- with(f_mc)
- {
- if(n < 4)
- {
- _y += 6;
- }
- if(_y > 390)
- {
- _visible = false;
- }
- }
- if(f_mc._y > 275)
- {
- for(var i in barracks_mc)
- {
- var b_mc = barracks_mc[i];
- if(b_mc._visible)
- {
- if(b_mc.hitTest(f_mc))
- {
- f_mc._visible = false;
- if(b_mc._currentframe == 4)
- {
- b_mc._visible = false;
- }
- else
- {
- b_mc.nextFrame();
- }
- break;
- }
- }
- }
- if(base_mc.hitTest(f_mc))
- {
- f_mc._visible = laser_mc._visible = ufo_mc._visible = false;
- fire1_mc._visible = fire2_mc._visible = fire3_mc._visible = fire4_mc._visible = false;
- resetLaser();
- ufo_mc.gotoAndStop(1);
- ufoSound_mc.gotoAndStop(1);
- base_mc.gotoAndPlay(2);
- newLife = true;
- lives--;
- if(lives < 1)
- {
- break;
- }
- }
- }
- }
- if((rate + 8) * rnd() < 4)
- {
- var j = int(rnd() * 11);
- for(var i in alien_mc)
- {
- var a_mc = alien_mc[i][j];
- if(typeof a_mc == "movieclip" && a_mc._visible && !f_mc._visible)
- {
- f_mc._x = Number(a_mc._x) + Number(a_mc._parent._x);
- f_mc._y = Number(a_mc._y) + Number(a_mc._parent._y) + 16;
- f_mc._visible = true;
- f_mc.gotoAndPlay(2);
- break;
- }
- }
- }
- }
- else
- {
- if(getTimer() - time < rate)
- {
- return undefined;
- }
- time = getTimer();
- alienSound_mc.gotoAndStop(tonePos + 2);
- tonePos++;
- tonePos %= 4;
- xMax = playMin;
- xMin = playMax;
- allGone = true;
- for(var i in alien_mc)
- {
- if(moveDown)
- {
- alien_mc[i]._y += downSpeed;
- }
- else
- {
- alien_mc[i]._x += dir;
- }
- for(var j in alien_mc[i])
- {
- if(typeof alien_mc[i][j] == "movieclip")
- {
- allGone = false;
- alien_mc[i][j].nextFrame();
- var x = Number(alien_mc[i]._x) + Number(alien_mc[i][j]._x);
- if(x < xMin)
- {
- xMin = x;
- }
- if(x > xMax)
- {
- xMax = x;
- }
- if(moveDown)
- {
- if(Number(alien_mc[i]._y) + Number(alien_mc[i][j]._y) > 320)
- {
- lives = 0;
- newLife = gameOver = true;
- ufoSound_mc.gotoAndStop(1);
- base_mc.gotoAndPlay(2);
- gotoAndStop(24);
- delete this.onEnterFrame;
- return undefined;
- }
- }
- }
- }
- }
- if(!moveDown && (xMax > playMax || xMin < playMin))
- {
- dir *= -1;
- speed += 30;
- moveDown = true;
- }
- else
- {
- moveDown = false;
- }
- if(allGone)
- {
- score += 1000;
- setScore();
- if(lives < 9)
- {
- lives++;
- setLives();
- }
- ufoSound_mc.gotoAndStop(1);
- gotoAndPlay(4);
- delete this.onEnterFrame;
- }
- }
- n--;
- }
- gameOver = true;
- gotoAndStop(24);
- delete this.onEnterFrame;
- return undefined;
- };
-